#pragma once

#include <linux/vmalloc_types.h>

/*
 * Architectures can set this mask to a combination of PGTBL_P?D_MODIFIED values
 * and let generic vmalloc and ioremap code know when arch_sync_kernel_mappings()
 * needs to be called.
 */
#ifndef ARCH_PAGE_TABLE_SYNC_MASK
#define ARCH_PAGE_TABLE_SYNC_MASK 0
#endif

extern struct vm_struct *__get_vm_area_caller(unsigned long size,
                                              unsigned long flags,
                                              unsigned long start, unsigned long end,
                                              const void *caller);
void free_vm_area(struct vm_struct *area);

void vunmap(const void *addr);
